home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1995 October
/
EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso
/
Aminet
/
util
/
wb
/
pchctl12.lha
/
PatchControl
/
PatchControl.doc
< prev
next >
Wrap
Text File
|
1995-05-15
|
3KB
|
95 lines
____ _____
o______ / _ /__ ____________\ _|______ ________ ____________ o
:\___ \ //___)\ __/ _ \ _ \_ __// __/___)\ __/_ _ \:
::/ \ \ / _\ \ _)_ \ \ \ | _)_\____ \ \/ \ _\ \ \
:/ _\ \ // \\ / \/ / \ | / \ _/ // \\ _\ // / /
/_________\ /____\_____\ //:\____|_______\____/____\____/_/ //:
o--/_______/---- - --/___/--- ----- -- - --- ---- -- ----/___/-o
PRESENTS
PatchControl V1.2
(C) Copyright 1994-1995 by ALiENDESiGN
Introduction:
------------
Do you know the problem: a program cannot be removed, because it can't remove
there patches. (such as MCP when you save the prefs) This programs will solve
all problems with systempatches. All programs can remove there patches. It's
compatible to Setman.
Difference between Setman and PatchControl:
------------------------------------------
Without Setman or PatchControl only the last program that patches a vector
can remove itself. All programs that support Setman (like MCP) can always be
removed.But there are programs (like Snoopy or Enforcer) that doesn't support
Setman cannot be removed. This meens that programs without a Setman support
can never be removed. PatchControl solved this problem.
Installation:
------------
Start it right after Setpatch in your startup-sequence.
for Example:
C:SetPatch QUIET
C:PatchControl
.... all other calls follow here
Usage:
------
In commandline you can select tasknames after PatchControl. These tasks
will be include there patches before all other programs. It's very useful
for ARQ or similar programs. Example for ARQ:
C:PatchControl ARQ
The tasknames are noncasesensitive and wildcards are supported.
For programers:
--------------
It's very easy to use. Make Findport() "SetMan". If the "SetMan" port exists,
remove the patches ( with SetFunction() ) without checking. PatchControl will
do the rest.
Developers: (Viruskiller coders)
----------
You can get a list of all patches:
Make Findport ("SetMan") and the read out the MP_SIGTASK APTR (in old SetMan
this will be zero). In the SIGTASK ( named PatchControl ) read out the
TC_USERDATA. This is a pointer to a patchlist.
Patchlist:
APTR LibraryBase
ULONG Offset
APTR PatchNode ;First Node
APTR LibraryBase
ULONG Offset
APTR PatchNode
. ;Here will follow a number of this structures.
. ;With a zero in APTR Library the list ends.
.
PatchNode:
APTR Next_Node ;Offset 00
APTR Previous_Node ;Offset 04
JMP Next_Program ;Offset 08 adress of the next program
APTR Program ;Offset 14 the program from this node
APTR TaskName ;Offset 18 the taskname of this program
LABEL PatchNode_SizeOf
Author:
------
Stefan "zerocom" Sommerfeld
Kaulbachstr. 3
14612 Falkensee
Germany
Phone: +49-[0]3322-202452
EMail: zerocom@cs.tu-berlin.de
or call our support BBS: eViL moOn! +49-[0]3322-208768 ( 2400-28800 )